package utils

import (
	"regexp"
	"strings"
	"unicode"
)

func TrimSpacesAndRemoveLastLetter(s string) string {
	// 去除字符串中的所有空格
	s = strings.ReplaceAll(s, " ", "")

	// 检查字符串是否为空
	if len(s) == 0 {
		return s
	}

	// 匹配所有中文字符
	re := regexp.MustCompile("[\u4e00-\u9fa5]")
	// 替换所有中文字符为空
	s = re.ReplaceAllString(s, "")
	// 获取最后一个字符
	lastRune := rune(s[len(s)-1])

	// 检查最后一个字符是否为英文字母
	if unicode.IsLetter(lastRune) && (lastRune >= 'A' && lastRune <= 'Z' || lastRune >= 'a' && lastRune <= 'z') {
		// 移除最后一个字符
		return s[:len(s)-1]
	}

	// 如果不是英文字母，返回原字符串
	return s
}
